using System;
using System.ComponentModel;
using System.Linq;

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;

namespace ApiTest2.Entitys
{
    /// <summary>
    /// 系统文件
    /// </summary>  
    /// <remarks>
    /// <![CDATA[ENGINE=InnoDB  COMMENT='系统文件']]>
    /// </remarks>
    [DbSource("Default"), Serializable]
    public class SysFile
    {
        /// <summary>
        /// file_code
        /// </summary>
        /// <remarks>
        /// <![CDATA[varchar(32) NOT NULL COMMENT '']]>
        /// </remarks>
        [Primary(32)]
        public string FileCode { get; set; }

        /// <summary>
        /// 文件类型 枚举
        /// </summary>
        /// <remarks>
        /// <![CDATA[varchar(32) DEFAULT NULL COMMENT '文件类型 枚举']]>
        /// </remarks>
        [Column(32)]
        [DisplayName("文件类型")]
        public string ContentType { get; set; }

        /// <summary>
        /// 文件路径
        /// </summary>
        /// <remarks>
        /// <![CDATA[varchar(128) DEFAULT NULL COMMENT '文件路径']]>
        /// </remarks>
        [Column(128)]
        [DisplayName("文件路径")]
        public string FilePath { get; set; }

        /// <summary>
        /// 原始名称
        /// </summary>
        /// <remarks>
        /// <![CDATA[varchar(255) DEFAULT NULL COMMENT '原始名称']]>
        /// </remarks>
        [Column(255)]
        [DisplayName("原始名称")]
        public string OriginalName { get; set; }

        /// <summary>
        /// 字节大小
        /// </summary>
        /// <remarks>
        /// <![CDATA[bigint NOT NULL COMMENT '字节大小']]>
        /// </remarks>
        [Column(false)]
        [DisplayName("字节大小")]
        public long ByteLength { get; set; }

        /// <summary>
        /// 来自uri
        /// </summary>
        /// <remarks>
        /// <![CDATA[varchar(255) DEFAULT NULL COMMENT '来自uri']]>
        /// </remarks>
        [Column(255)]
        [DisplayName("来自uri")]
        public string Uri { get; set; }

        /// <summary>
        /// 使用中
        /// </summary>
        /// <remarks>
        /// <![CDATA[bit(1) NOT NULL COMMENT '使用中']]>
        /// </remarks>
        [Column(1, false)]
        [DisplayName("使用中")]
        public bool IsUse { get; set; }

        /// <summary>
        /// 创建日期
        /// </summary>
        /// <remarks>
        /// <![CDATA[int NOT NULL COMMENT '创建日期']]>
        /// </remarks>
        [Column(false)]
        [DisplayName("创建日期")]
        public int CreateDate { get; set; }

        /// <summary>
        /// create_time
        /// </summary>
        /// <remarks>
        /// <![CDATA[datetime NOT NULL COMMENT '']]>
        /// </remarks>
        [Column(false)]
        public DateTime CreateTime { get; set; }

    }
}
